Repository navigation
Бэкенд личных и командных чатов и каналов программ - #880
Draft
TThanos3000 wants to merge 16 commits into
Draft
TThanos3000 wants to merge 16 commits into
TThanos3000 wants to merge 16 commits into
Conversation
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Единый черновик к dev для проверки всего стека чатов. Включает транзакционную отправку с повтором по client_message_id, персональные непрочитанные в командах, поиск, скачивание вложений с проверкой доступа, историю вокруг сообщения и синхронизацию после переподключения. Включает каналы программ, настройки личных сообщений, блокировку и жалобы, уведомления с упоминаниями и персональные черновики.
У черновика есть версия. Одновременная запись с другого устройства возвращает 409 с текущим текстом. Список показывает только наличие черновика. Организаторы могут работать с черновиками и публикациями через Django-админку.
При очистке очереди и сбросе обложки проекта сервер сохраняет файл, пока он прикреплен к видимому сообщению. При сбое Selectel запись файла сохраняется для повтора, API возвращает
502с кодомfile_delete_failed.На коммите
8c4983cлокально прошли 152 теста PostgreSQL. Отдельно проверено обновлениеchatsс 0011 до 0018 на синтетических данных. API сохранил историю, ответ на сообщение, старое вложение и отметку прочтения. Для существующих опубликованной и черновой программ созданы каналы.На
5ac88edпрошел 81 локальный тест PostgreSQL. Все четыре проверки GitHub зеленые. Полный прогон PostgreSQL выполнил 2047 тестов. Отдельный прогон через HTTP и WebSocket на локальном Daphne с PostgreSQL и тестовым хранилищем подтвердил повтор отправки с тем же ID, скачивание без изменения байтов,409при очистке опубликованного файла и404для участника после выхода из проекта. Автор по-прежнему скачивает вложение.Контракт API и сценарий приемки на dev. Для скачивания клиент передает JWT. В тестах Selectel имитируется. Angular на dev (
3edda90) открывает вложение обычной ссылкой. Защищенное скачивание требуется подключить к авторизованному HTTP-клиенту к моменту выкладки. На dev предстоит проверить скачивание контрольного файла, отзыв доступа к нему и тип контейнера.Промежуточные изменения доступны в #870–#879. Этот PR содержит их суммарный diff, черновики, первый непрочитанный и дополнительные проверки вложений.